package lwk.thread;

/**
 * 创建线程方式二：
 * 1、实现Runnable接口
 * 2、实现run()方法
 * 3、创建Runnable接口实现类对象
 * 4、创建线程对象，传参Runnable接口实现类对象，调用start()方法启动线程
 */
public class TestThread2 implements Runnable {
    @Override
    public void run() {
        for (int i = 0; i < 20; i++) {
            System.out.println("+++++++++++++++++"+i);
        }
    }

    public static void main(String[] args) {

        // 创建Runnable接口实现类对象
        TestThread2 testThread2 = new TestThread2();
        // 创建线程对象，传参Runnable接口实现类对象，调用start()方法启动线程
        new Thread(testThread2).start();

        // Runnable使用了@FunctionalInterface注解，表示该接口为函数式接口，可以使用lambda调用
        new Thread(() -> {
            for (int i = 0; i < 20; i++) {
                System.out.println("+++++++++++++++++++++++++++++++++++++++++++++"+i);
            }
        }).start();

        for (int i = 0; i < 100; i++) {
            System.out.println("-----------"+i);
        }
    }

}
